CRUD অপারেশন (Create, Read, Update, Delete)

Microsoft Technologies - এএসপি ডট নেট কোর (ASP.Net Core) Entity Framework Core (EF Core) |
250
250

CRUD (Create, Read, Update, Delete) হলো ডেটাবেজ অপারেশন পরিচালনার একটি মৌলিক পদ্ধতি, যা অধিকাংশ অ্যাপ্লিকেশন ডেভেলপমেন্টে ব্যবহৃত হয়। ASP.NET Core-এ, CRUD অপারেশনগুলি সাধারণত Entity Framework Core (EF Core) ব্যবহার করে করা হয়, যা একটি Object-Relational Mapping (ORM) টুল এবং ডেটাবেজের সাথে কাজ করার জন্য খুবই শক্তিশালী।

CRUD অপারেশনগুলোর মাধ্যমে ব্যবহারকারীদের ইনপুট গ্রহণ, ডেটা প্রদর্শন, ডেটা আপডেট করা এবং ডেটা মুছে ফেলা যায়। ASP.NET Core অ্যাপ্লিকেশনে এই অপারেশনগুলো করতে Entity Framework Core ব্যবহৃত হয়।


1. Create (তৈরি করা)

Create অপারেশন ডেটাবেজে নতুন রেকর্ড যোগ করার জন্য ব্যবহৃত হয়। ASP.NET Core-এ এটি সাধারণত POST রিকোয়েস্টের মাধ্যমে করা হয়, যেখানে ডেটা ফর্মের মাধ্যমে সার্ভারে পাঠানো হয়।

উদাহরণ:

এখানে একটি Product নামক মডেল তৈরি করা হলো এবং একটি নতুন প্রোডাক্ট ডেটাবেজে অ্যাড করার জন্য Create মেথড ব্যবহার করা হয়েছে।

Product.cs মডেল

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
}

ProductsController.cs

public class ProductsController : Controller
{
    private readonly ApplicationDbContext _context;

    public ProductsController(ApplicationDbContext context)
    {
        _context = context;
    }

    // GET: Products/Create
    public IActionResult Create()
    {
        return View();
    }

    // POST: Products/Create
    [HttpPost]
    [ValidateAntiForgeryToken]
    public async Task<IActionResult> Create([Bind("Id,Name,Price")] Product product)
    {
        if (ModelState.IsValid)
        {
            _context.Add(product);
            await _context.SaveChangesAsync();
            return RedirectToAction(nameof(Index));
        }
        return View(product);
    }
}

এখানে Create মেথডটি ব্যবহারকারী থেকে ইনপুট নিয়ে সেই ইনপুটকে ডেটাবেজে সেভ করবে।


2. Read (পড়া)

Read অপারেশন ডেটাবেজ থেকে ডেটা পড়তে ব্যবহৃত হয়। এটি সাধারণত GET রিকোয়েস্টের মাধ্যমে করা হয়, যেখানে ডেটা ডেটাবেজ থেকে অ্যাক্সেস করা হয় এবং ব্যবহারকারীকে দেখানো হয়।

উদাহরণ:

এখানে আমরা Product মডেল থেকে ডেটা পড়ছি এবং অ্যাকশন রিটার্ন করছি যাতে সেই ডেটা ভিউতে প্রদর্শিত হয়।

ProductsController.cs

// GET: Products
public async Task<IActionResult> Index()
{
    return View(await _context.Products.ToListAsync());
}

এই মেথডটি সমস্ত Product গুলি ডেটাবেজ থেকে পড়বে এবং ভিউতে প্রদর্শন করবে।

Index.cshtml (View)

@foreach (var product in Model)
{
    <div>
        <h3>@product.Name</h3>
        <p>@product.Price</p>
    </div>
}

3. Update (আপডেট করা)

Update অপারেশন ডেটাবেজে একটি বিদ্যমান রেকর্ড আপডেট করতে ব্যবহৃত হয়। এটি PUT বা PATCH রিকোয়েস্টের মাধ্যমে করা হয় এবং ডেটাবেজে থাকা একটি রেকর্ডের তথ্য পরিবর্তন করে।

উদাহরণ:

এখানে একটি প্রোডাক্ট আপডেট করার উদাহরণ দেওয়া হল।

ProductsController.cs

// GET: Products/Edit/5
public async Task<IActionResult> Edit(int? id)
{
    if (id == null)
    {
        return NotFound();
    }

    var product = await _context.Products.FindAsync(id);
    if (product == null)
    {
        return NotFound();
    }
    return View(product);
}

// POST: Products/Edit/5
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Edit(int id, [Bind("Id,Name,Price")] Product product)
{
    if (id != product.Id)
    {
        return NotFound();
    }

    if (ModelState.IsValid)
    {
        try
        {
            _context.Update(product);
            await _context.SaveChangesAsync();
        }
        catch (DbUpdateConcurrencyException)
        {
            if (!ProductExists(product.Id))
            {
                return NotFound();
            }
            else
            {
                throw;
            }
        }
        return RedirectToAction(nameof(Index));
    }
    return View(product);
}

এখানে Edit মেথডটি নির্দিষ্ট Product-এর তথ্য লোড করে এবং সেই তথ্য আপডেট করার জন্য ডেটাবেজে পাঠায়।


4. Delete (মুছে ফেলা)

Delete অপারেশন ডেটাবেজ থেকে একটি রেকর্ড মুছে ফেলার জন্য ব্যবহৃত হয়। এটি DELETE রিকোয়েস্টের মাধ্যমে করা হয় এবং ডেটাবেজ থেকে একটি রেকর্ড স্থায়ীভাবে মুছে ফেলে।

উদাহরণ:

এখানে একটি প্রোডাক্ট ডিলিট করার উদাহরণ দেওয়া হলো।

ProductsController.cs

// GET: Products/Delete/5
public async Task<IActionResult> Delete(int? id)
{
    if (id == null)
    {
        return NotFound();
    }

    var product = await _context.Products
        .FirstOrDefaultAsync(m => m.Id == id);
    if (product == null)
    {
        return NotFound();
    }

    return View(product);
}

// POST: Products/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public async Task<IActionResult> DeleteConfirmed(int id)
{
    var product = await _context.Products.FindAsync(id);
    _context.Products.Remove(product);
    await _context.SaveChangesAsync();
    return RedirectToAction(nameof(Index));
}

এখানে DeleteConfirmed মেথডটি প্রোডাক্টটি ডেটাবেজ থেকে মুছে ফেলে।


সারাংশ

CRUD অপারেশন (Create, Read, Update, Delete) হলো ডেটাবেজের মূল কার্যকলাপ এবং এটি যেকোনো ডেটা-চালিত অ্যাপ্লিকেশনে ব্যবহৃত হয়। ASP.NET Core-এ Entity Framework Core (EF Core) ব্যবহার করে এই অপারেশনগুলো সহজেই করা যায়। এর মাধ্যমে আপনি নতুন ডেটা তৈরি, ডেটা পড়া, ডেটা আপডেট এবং ডেটা মুছে ফেলার মতো কাজগুলি খুব সহজে করতে পারবেন।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion